#include "funcionesGenerales.h"

 
int cifra(int num,unsigned int pos){
// Precondicion, 0 < pos <= cifras de num.
// Poscondicion, Devuelve la cifra num[pos] 

	int c = log10(num)+1;
	num = num / pot(10,c-pos);
	num = num % 10;
	return num;
}



bool capicua(unsigned int num){
// Precondicion: num>0
// Poscondicion, Devuelve verdadero si num es capicua (palindromo) 

	unsigned short int cantCifras;
	unsigned short int i,j;

	i = 1;
	cantCifras = log10(num)+1;
	j = cantCifras;

	while(i < cantCifras/2){

				
		if (cifra(num,i) != cifra(num,cantCifras-i)) return false;		

		num = num % pot(10,j-1);
		num = num / 10 ;

		i++;
		j--;
	}
	return true;
}


long long int pot(long long int base,long long int expo){
// Precondicion, true.
// Poscondicion, Devuelve b elevado a la expo.
	int res = 1;
	while(expo>0){
		res = res*base;
		expo--;
	}
	return res;
}


bool esMultiplicacionDeDosNumerosDe3Cifras(unsigned int n){
// Precondicion, true.
// Poscondicion, Devuelve true si n se puede formar como multiplicacion de dos numeros de 3 cifras.
	return true;
}


